package com.hksj.jetlinks.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 菜单信息表
 * @author chenxingqing
 */
@Data
@ApiModel
@TableName("s_menu")
public class Menu implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "id")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;

    @ApiModelProperty(value = "父级ID")
    @TableField("parent_id")
    private String parentId;

    @ApiModelProperty(value = "树路径")
    @TableField("path")
    private String path;

    @ApiModelProperty(value = "排序序号")
    @TableField("sort_index")
    private Long sortIndex;

    @ApiModelProperty(value = "树层级")
    @TableField("_level")
    private Integer level;

    @ApiModelProperty(value = "菜单所有者")
    @TableField("owner")
    private String owner;

    @ApiModelProperty(value = "名称")
    @TableField("name")
    private String name;

    @ApiModelProperty(value = "编码")
    @TableField("code")
    private String code;

    @ApiModelProperty(value = "所属应用")
    @TableField("application")
    private String application;

    @ApiModelProperty(value = "描述")
    @TableField("describe")
    private String describe;

    @ApiModelProperty(value = "URL,路由")
    @TableField("url")
    private String url;

    @ApiModelProperty(value = "图标")
    @TableField("icon")
    private String icon;

    @ApiModelProperty(value = "状态,0为禁用,1为启用")
    @TableField("status")
    private Integer status;

    @ApiModelProperty(value = "绑定权限信息")
    @TableField("permissions")
    private String permissions;

    @ApiModelProperty(value = "按钮定义信息")
    @TableField("buttons")
    private String buttons;

    @ApiModelProperty(value = "其他配置信息")
    @TableField("options")
    private String options;

    @ApiModelProperty(value = "创建者ID(只读)")
    @TableField("creator_id")
    private String creatorId;

    @ApiModelProperty(value = "创建时间(只读)")
    @TableField("create_time")
    private Long createTime;

}
